package com.gxa.zhonglong.mapper;

import com.gxa.zhonglong.pojo.User;

import java.util.List;
import java.util.Map;

/**
 * @author bill
 * @date 2021/10/21 9:32
 */
public interface UserMapper {

    /**
     * 根据姓名或用户名模糊查询员工信息
     * @param string 员工姓名或用户名
     * @return 员工信息列表
     */
    List<Map<String,Object>> selectByName(String string);

    List<Map<String,Object>> selectByPage(Integer page,Integer size,String name);

    Boolean add(User user);
    Boolean update(User user);

    int deleteById(List<Long> ids);

    /**
     * 通过用用户id查询用户信息
     * @param id 用户id
     * @return 员工信息
     */
    Map<String,Object> selectById(Long id);

    /**
     * 通过用户名查询用户信息
     * @param userName 员工用户名
     * @return 员工信息
     */
    Map<String,Object> selectByUserName(String userName);

    /**
     * 获取用户的一级权限列表
     * @param id 用户id
     * @return
     */
    List<Map<String,Object>> getFirstMenuList(Long id);

    /**
     * 获取用户的二级权限列表
     * @param userId
     * @param pid
     * @return
     */
    List<Map<String,Object>> getSecondMenuList(Long userId, Long pid);

    /**
     * 查询指定用户的商品管理权限列表
     * @param userId 用户编号
     * @return map
     */
    Map<String, Object> getGoodsMgr(Long userId);



    Integer selectCount(String name);
}
